home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994 November: Tool Chest / Dev.CD Nov 94.toast / New System Software Extensions / OpenDoc A6 / SOM / OpenDoc and SOM / C / DragDrpB.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-04-19  |  6.8 KB  |  225 lines  |  [TEXT/MPS ]

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: Locrian:WWDCSun:C:DragDrpB.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: somc/smemit.c
  7.  *     SOM Emitter emith.dll: somc/smmain.c
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *  Classes defined in this interface
  13.  * 
  14.  */
  15.  
  16.  
  17. #ifndef SOM_ODBaseDragAndDrop_h
  18. #define SOM_ODBaseDragAndDrop_h
  19.  
  20.  
  21. #include <som.h>
  22.  
  23. /*
  24.  * -- This emitter treats Method Tokens as Thunks by default
  25.  * -- Use the sc modifier "nothunks" to change this default
  26.  */
  27. #undef somresolve_
  28. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  29.  
  30. /*
  31.  * Define the class name as an object type
  32.  */
  33. #ifndef ODBaseDragAndDrop
  34. #define ODBaseDragAndDrop SOMObject
  35. #endif
  36. #include <ODObject.h>
  37.  
  38. /*
  39.  * Start of user-defined types:
  40.  */
  41. #ifndef ODExtension
  42.     #define ODExtension SOMObject
  43. #endif /* ODExtension */
  44. #ifndef ODSession
  45.     #define ODSession SOMObject
  46. #endif /* ODSession */
  47. #ifndef ODStorageUnit
  48.     #define ODStorageUnit SOMObject
  49. #endif /* ODStorageUnit */
  50. #ifndef ODPart
  51.     #define ODPart SOMObject
  52. #endif /* ODPart */
  53. #ifndef ODFrame
  54.     #define ODFrame SOMObject
  55. #endif /* ODFrame */
  56.  
  57. /*
  58.  * End of user-defined types.
  59.  */
  60.  
  61. #define ODBaseDragAndDrop_MajorVersion 1
  62. #define ODBaseDragAndDrop_MinorVersion 0
  63.  
  64. /*
  65.  * External name shortening if required
  66.  */
  67. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  68. #define ODBaseDragAndDropNewClass c
  69. #define ODBaseDragAndDropClassData d
  70. #define ODBaseDragAndDropCClassData x
  71. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  72. /*--------------Migration------------*/
  73. #define ODBaseDragAndDrop_classObj ODBaseDragAndDropClassData.classObject
  74. #define _ODBaseDragAndDrop ODBaseDragAndDrop_classObj
  75.  
  76. /*
  77.  * Declare the class creation procedure
  78.  */
  79.  
  80. #if applec ^ PRAGMA_LIB_EXPORT
  81. #pragma lib_export on
  82. #endif
  83.  
  84. SOMEXTERN SOMClass * SOMLINK ODBaseDragAndDropNewClass(integer4 somtmajorVersion,
  85.         integer4 somtminorVersion);
  86.  
  87. /*
  88.  * Declare the class data structure
  89.  */
  90. SOMEXTERN struct ODBaseDragAndDropClassDataStructure {
  91.     SOMAny *classObject;
  92.     somMToken Clear;
  93.     somMToken GetContentStorageUnit;
  94.     somMToken StartDrag;
  95.     somMToken reserved1;
  96. }
  97. #ifdef SOM_NO_DATA_EXPORTS
  98.     * ODBaseDragAndDropGetClassData ( void );
  99. #   undef ODBaseDragAndDropClassData
  100. #   define ODBaseDragAndDropClassData (*ODBaseDragAndDropGetClassData())
  101. #else
  102.       ODBaseDragAndDropClassData;
  103. #endif /* SOM_NO_DATA_EXPORTS */
  104.  
  105. #if applec ^ PRAGMA_LIB_EXPORT
  106. #pragma lib_export off
  107. #endif
  108.  
  109.  
  110. /*
  111.  * Declare the C specific class data structure
  112.  */
  113. SOMEXTERN struct ODBaseDragAndDropCClassDataStructure {
  114.     somMethodTabs parentMtab;
  115.     somDToken instanceDataToken;
  116. } ODBaseDragAndDropCClassData;
  117.  
  118. /*
  119.  * New and Renew macros for ODBaseDragAndDrop
  120.  */
  121. #define ODBaseDragAndDropNew() \
  122.     ( ( ! (ODBaseDragAndDropClassData.classObject) && \
  123.         (ODBaseDragAndDropNewClass(ODBaseDragAndDrop_MajorVersion, ODBaseDragAndDrop_MinorVersion)) ), \
  124.       (_somNew(ODBaseDragAndDropClassData.classObject)) )
  125. #define ODBaseDragAndDropRenew(buf) \
  126.     ( _somRenew(ODBaseDragAndDropClassData.classObject, buf) )
  127.  
  128. /*
  129.  * Override method: somInit
  130.  */
  131. #define ODBaseDragAndDrop_somInit(somSelf) \
  132.     SOMObject_somInit(somSelf)
  133.  
  134. /*
  135.  * Override method: somUninit
  136.  */
  137. #define ODBaseDragAndDrop_somUninit(somSelf) \
  138.     SOMObject_somUninit(somSelf)
  139.  
  140. /*
  141.  * New Method: Clear
  142.  */
  143. typedef void   (SOMLINK *somTD_ODBaseDragAndDrop_Clear)(ODBaseDragAndDrop *somSelf, Environment *ev);
  144. #define somMD_ODBaseDragAndDrop_Clear "::ODBaseDragAndDrop::Clear"
  145. #define ODBaseDragAndDrop_Clear(somSelf,ev) \
  146.     (SOM_Resolve(somSelf, ODBaseDragAndDrop, Clear) \
  147.     (somSelf,ev))
  148. #ifndef SOMGD_Clear
  149.     #if (defined(_Clear) || defined(__Clear))
  150.         #undef _Clear
  151.         #undef __Clear
  152.         #define SOMGD_Clear 1
  153.     #else
  154.         #define _Clear ODBaseDragAndDrop_Clear
  155.     #endif /* _Clear */
  156. #endif /* SOMGD_Clear */
  157.  
  158. /*
  159.  * New Method: GetContentStorageUnit
  160.  */
  161. typedef ODStorageUnit*   (SOMLINK *somTD_ODBaseDragAndDrop_GetContentStorageUnit)(ODBaseDragAndDrop *somSelf, Environment *ev);
  162. #define somMD_ODBaseDragAndDrop_GetContentStorageUnit "::ODBaseDragAndDrop::GetContentStorageUnit"
  163. #define ODBaseDragAndDrop_GetContentStorageUnit(somSelf,ev) \
  164.     (SOM_Resolve(somSelf, ODBaseDragAndDrop, GetContentStorageUnit) \
  165.     (somSelf,ev))
  166. #ifndef SOMGD_GetContentStorageUnit
  167.     #if (defined(_GetContentStorageUnit) || defined(__GetContentStorageUnit))
  168.         #undef _GetContentStorageUnit
  169.         #undef __GetContentStorageUnit
  170.         #define SOMGD_GetContentStorageUnit 1
  171.     #else
  172.         #define _GetContentStorageUnit ODBaseDragAndDrop_GetContentStorageUnit
  173.     #endif /* _GetContentStorageUnit */
  174. #endif /* SOMGD_GetContentStorageUnit */
  175.  
  176. /*
  177.  * New Method: StartDrag
  178.  */
  179. typedef ODDropResult   (SOMLINK *somTD_ODBaseDragAndDrop_StartDrag)(ODBaseDragAndDrop *somSelf, Environment *ev,
  180.         ODFrame* srcFrame,
  181.         ODValueType imageType,
  182.         ODPtr image,
  183.         ODPart** destPart,
  184.         ODPtr* refCon);
  185. #define somMD_ODBaseDragAndDrop_StartDrag "::ODBaseDragAndDrop::StartDrag"
  186. #define ODBaseDragAndDrop_StartDrag(somSelf,ev,srcFrame,imageType,image,destPart,refCon) \
  187.     (SOM_Resolve(somSelf, ODBaseDragAndDrop, StartDrag) \
  188.     (somSelf,ev,srcFrame,imageType,image,destPart,refCon))
  189. #ifndef SOMGD_StartDrag
  190.     #if (defined(_StartDrag) || defined(__StartDrag))
  191.         #undef _StartDrag
  192.         #undef __StartDrag
  193.         #define SOMGD_StartDrag 1
  194.     #else
  195.         #define _StartDrag ODBaseDragAndDrop_StartDrag
  196.     #endif /* _StartDrag */
  197. #endif /* SOMGD_StartDrag */
  198. #ifndef SOM_DONT_USE_INHERITED_MACROS
  199. #define ODBaseDragAndDrop_InitObject ODObject_InitObject
  200. #define ODBaseDragAndDrop_IsInitialized ODObject_IsInitialized
  201. #define ODBaseDragAndDrop_HasExtension ODObject_HasExtension
  202. #define ODBaseDragAndDrop_GetExtension ODObject_GetExtension
  203. #define ODBaseDragAndDrop_ReleaseExtension ODObject_ReleaseExtension
  204. #define ODBaseDragAndDrop_Purge ODObject_Purge
  205. #define ODBaseDragAndDrop_SubClassResponsibility ODObject_SubClassResponsibility
  206. #define ODBaseDragAndDrop_somFree SOMObject_somFree
  207. #define ODBaseDragAndDrop_somGetClass SOMObject_somGetClass
  208. #define ODBaseDragAndDrop_somGetClassName SOMObject_somGetClassName
  209. #define ODBaseDragAndDrop_somGetSize SOMObject_somGetSize
  210. #define ODBaseDragAndDrop_somIsA SOMObject_somIsA
  211. #define ODBaseDragAndDrop_somIsInstanceOf SOMObject_somIsInstanceOf
  212. #define ODBaseDragAndDrop_somRespondsTo SOMObject_somRespondsTo
  213. #define ODBaseDragAndDrop_somDispatchV SOMObject_somDispatchV
  214. #define ODBaseDragAndDrop_somDispatchL SOMObject_somDispatchL
  215. #define ODBaseDragAndDrop_somDispatchA SOMObject_somDispatchA
  216. #define ODBaseDragAndDrop_somDispatchD SOMObject_somDispatchD
  217. #define ODBaseDragAndDrop_somDispatch SOMObject_somDispatch
  218. #define ODBaseDragAndDrop_somClassDispatch SOMObject_somClassDispatch
  219. #define ODBaseDragAndDrop_somPrintSelf SOMObject_somPrintSelf
  220. #define ODBaseDragAndDrop_somDumpSelf SOMObject_somDumpSelf
  221. #define ODBaseDragAndDrop_somDumpSelfInt SOMObject_somDumpSelfInt
  222. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  223.  
  224. #endif       /* SOM_ODBaseDragAndDrop_h */
  225.